<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" lang="zh" xml:lang="zh">
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>工件: 引用体系结构</title>
<meta content="Artifact" name="uma.type">
<meta content="rup_reference_architecture" name="uma.name">
<meta content="引用体系结构" name="uma.presentationName">
<meta content="@Type:@Name:@DisplayName" name="uma.category">
<meta content="WorkProductType:concept:概念" name="uma.category">
<meta content="Artifact" name="element_type">
<meta content="description" name="filetype">
<meta name="role" content="">
<link type="text/css" href="./../../css/default.css" rel="StyleSheet">
<script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageResource.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageSection.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageSubSection.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/ContentPageToolbar.js"></script><script language="JavaScript" type="text/javascript" src="./../../scripts/contentPage.js"></script><script language="JavaScript" type="text/javascript">
					var backPath = './../../';
					var imgPath = './../../images/';
					var nodeInfo=[{view: "view:_LVCagP5WEdmAzesbYywanQ", path: ["_LVCagP5WEdmAzesbYywanQ", "_zRigkAILEdq-_NKqZM1EhA", "_qwxC8N7YEdmjRZts2c4ZjQ", "{4AC346F0-E6FC-4D2C-8410-2EDF8DDDC91D}", "{855CE09A-D297-4373-BEEA-D38B8AB348DA}"]}, {view: "view:_LVCagP5WEdmAzesbYywanQ", path: ["_LVCagP5WEdmAzesbYywanQ", "_zRigkAILEdq-_NKqZM1EhA", "_QV4x0AISEdqTna4sZVFRow", "_kjFBYN7HEdm8G6yT7-Wdqw", "{855CE09A-D297-4373-BEEA-D38B8AB348DA}"]}, {view: "view:_FCx1oN7CEdmsEI4YDGX2ag", path: ["_FCx1oN7CEdmsEI4YDGX2ag", "_f6_YwN7DEdmsEI4YDGX2ag", "_qwxC8N7YEdmjRZts2c4ZjQ", "{4AC346F0-E6FC-4D2C-8410-2EDF8DDDC91D}", "{855CE09A-D297-4373-BEEA-D38B8AB348DA}"]}, {view: "view:_FCx1oN7CEdmsEI4YDGX2ag", path: ["_FCx1oN7CEdmsEI4YDGX2ag", "_Jvt1cAIaEdqEutyfYo0quQ", "_EOvXUN7HEdm8G6yT7-Wdqw", "_kjFBYN7HEdm8G6yT7-Wdqw", "{855CE09A-D297-4373-BEEA-D38B8AB348DA}"]}, {view: "view:_FCx1oN7CEdmsEI4YDGX2ag", path: ["_FCx1oN7CEdmsEI4YDGX2ag", "_Jvt1cAIaEdqEutyfYo0quQ", "_jijhYAIaEdqEutyfYo0quQ", "_3lZjkCxqEdqYV4MWf8PiCw", "{855CE09A-D297-4373-BEEA-D38B8AB348DA}"]}];
					contentPage.preload(imgPath, backPath, nodeInfo, '', false, false, false);
				</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table width="100%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td valign="top"><a name="Top"></a>
<div id="page-guid" value="{855CE09A-D297-4373-BEEA-D38B8AB348DA}"></div>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td nowrap="true" class="pageTitle">工件：引用体系结构</td><td width="100%">
<div id="contentPageToolbar" align="right"></div>
</td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td class="pageTitleSeparator"><img height="1" title="" alt="" src="./../../images/shim.gif"></td>
</tr>
</table>
<div class="overview">
<table cellpadding="0" cellspacing="0" border="0" width="97%">
<tr>
<td width="50"><img title="" alt="" src="./../../core.base_rup/workproducts/resources/doc_artf.jpg"></td><td>
<table cellpadding="0" cellspacing="0" border="0" class="overviewTable">
<tr>
<td valign="top">此工作产品本质上是一个预定义的体系结构模式或一组模式，为了在特定的业务和技术环境中使用，可能已部分或全部实例化、设计和验证，并与支持的工件一起使用。</td>
</tr>
<tr>
<td>域：<a href="./../../core.base_rup/domains/analysis_and_design_BD3BBB1D.html" guid="_kjFBYN7HEdm8G6yT7-Wdqw">分析与设计</a>
<br>工作产品类型：<a href="./../../core.base_rup/workproducttypes/concept_36649407.html" guid="_3lZjkCxqEdqYV4MWf8PiCw">概念</a></td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">用途</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<td class="sectionTableSingleCell"><a id="Top" name="Top"></a><a id="Purpose" name="Purpose"></a> 
<p>
    引用体系结构工作产品是组织的可重用资产库的一部分。它们的目的是形成体系结构开发的起始点。 它们的范围包括现成的<a class="elementLinkWithUserText" href="./../../core.base_rup/guidances/termdefinitions/architectural_pattern_E2E8EB79.html" guid="_x7JZRtnmEdmO6L4XMImrsA">体系结构模式</a>、<a class="elementLinkWithUserText" href="./../../core.base_rup/guidances/termdefinitions/architectural_mechanism_8730DF1F.html" guid="_x7JZQ9nmEdmO6L4XMImrsA">体系结构机制</a>和<a class="elementLinkWithUserText" href="./../../core.base_rup/guidances/termdefinitions/framework_96F80772.html" guid="_yJmE89nmEdmO6L4XMImrsA">框架</a>和完整的系统，功能已经使用证实。它们可能是普遍适用的，或用于范围很广、跨领域的一类系统，或者具有较窄的、特定于领域的侧重点。
</p>
<p>
    通过选择现有引用体系结构（通过使用已经知道这些体系结构可以满足各需求），使用已测试的引用体系结构是解决许多非功能需求（特别是质量需求）的有效方法。引用体系结构可能已存在或从不同的抽象级别和从不同的角度使用它们。这些对应于 4+1
    视图（请参阅<a class="elementLinkWithUserText" href="./../../core.base_rup/guidances/concepts/software_architecture_4269A354.html#A Typical Set of Architectural Views" guid="3.066252221588648E-305">“一组典型的体系结构视图”</a>）。这样，软件设计人员可以按不同的完成程度选择什么是最适合的：仅适合体系结构设计，或者适合体系结构设计和实施。&nbsp;
</p>
<p>
    通常，引用体系结构定义为不包含将用于构造系统的组件实例，如果它包含组件实例，就会变成<a class="elementLinkWithUserText" href="./../../core.base_rup/guidances/termdefinitions/product-line_architecture_ED8F6B10.html" guid="_yRDX3NnmEdmO6L4XMImrsA">产品线体系结构</a>，但这不是严格意义上的区别。 在 Rational Unified
    Process（RUP）中，遵循引用体系结构的概念来包含对现有可重用组件（即实施）的引用。
</p></td>
</tr>
</table>
</div>
<div class="sectionHeading">关系</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<th scope="row" class="sectionTableHeading">角色</th><td width="42%" class="sectionTableCell"><span class="sectionTableCellHeading">负责人:
								</span>
<ul>
<li>
<a href="./../../core.base_rup/roles/rup_software_architect_DB0BF177.html" guid="{4AC346F0-E6FC-4D2C-8410-2EDF8DDDC91D}">软件设计人员</a>
</li>
</ul>
</td><td class="sectionTableCell"><span class="sectionTableCellHeading">修改者:
								</span>
<ul>
<li>
<a href="./../../core.base_rup/roles/rup_software_architect_DB0BF177.html" guid="{4AC346F0-E6FC-4D2C-8410-2EDF8DDDC91D}">软件设计人员</a>
</li>
</ul>
</td>
</tr>
<tr valign="top">
<th scope="row" class="sectionTableHeading">任务</th><td width="42%" class="sectionTableCell"><span class="sectionTableCellHeading">输入至:
								</span>
<ul>
<li>
<a href="./../../core.base_rup/tasks/architectural_analysis_2B9BE03.html" guid="{8CB48402-D4C5-4E17-BB33-507315CB1BBF}">体系结构分析</a>
</li>
</ul>
</td><td class="sectionTableCell"><span class="sectionTableCellHeading">输出自:
								</span>
<ul>
<li>
<a href="./../../core.base_rup/tasks/assess_viability_of_proof_8BA70FD2.html" guid="{F04ADECF-743C-4BEB-A92C-9FF25AE7429D}">评估体系结构概念验证的生存能力</a>
</li>
</ul>
</td>
</tr>
<tr valign="top">
<th scope="row" class="sectionTableHeading">流程使用情况</th><td class="sectionTableCell" colspan="2">
<ul>
<li>
<a href="./../../core.base_rup/capabilitypatterns/analysis_design_49725AC4.html" guid="{002674F9-6511-4D15-8623-B761D8C48986}">分析和设计</a>
									&nbsp;&gt;&nbsp;
								<a href="./../../core.base_rup/capabilitypatterns/define_a_candidate_architecture_A3651DA3.html" guid="{71ADFE9A-34A0-41BD-8A17-BEA3210E2BBD}">定义候选体系结构</a>
									&nbsp;&gt;&nbsp;
								<a href="./../../core.base_rup/capabilitypatterns/rup_reference_architecture_C9916732.html" guid="_Pu3DAkocEdqrjq4i3fchvA">引用体系结构</a>
</li>
<li>
<a href="./../../core.base_rup/capabilitypatterns/analysis_design_49725AC4.html" guid="{002674F9-6511-4D15-8623-B761D8C48986}">分析和设计</a>
									&nbsp;&gt;&nbsp;
								<a href="./../../core.base_rup/capabilitypatterns/perform_architectural_synthesis_B63930B9.html" guid="{C67C8E56-D9B6-499C-8171-C153FB28F1C3}">执行体系结构合成</a>
									&nbsp;&gt;&nbsp;
								<a href="./../../core.base_rup/capabilitypatterns/rup_reference_architecture_116135B.html" guid="_COQSJBi2Edq_uI8xTPML6g">引用体系结构</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">描述</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<th scope="row" class="sectionTableHeading">主要描述</th><td class="sectionTableCell"><h4>
    资产组织
</h4>
<p>
    拥有引用体系结构资产的组织需要决定如何分类和组织各资产以使软件设计人员容易进行检索（通过匹配新系统的选择条件来完成）。 虽然创建和存储引用体系结构当前不属于 RUP 的范围，但建议围绕<a class="elementLinkWithUserText" href="./../../core.base_concepts/guidances/termdefinitions/domain_D8238B93.html" guid="_yHEVYdnmEdmO6L4XMImrsA">术语定义：域</a>的概念组织体系结构，域是一个主题区域，定义了一个系统或一系列系统某方面的知识和概念。这里允许在应用程序以下的级别使用术语“领域”。此用法与某些定义（例如
    [<a href="#HOF99">HOF99</a>] 中的定义）稍有不同，但非常符合 [<a href="#LMFS96">LMFS96</a>] 中的定义：
</p>
<p>
    <i>“<b>产品线领域</b>：一组能力（现在的和／或将来的）－ 定义用于促进沟通、分析和设计，以确定、设计和管理产品线的共性。这样的领域可能包含关系紧密的各组最终用户系统、跨多个系统公用的功能或广泛适用的各组底层服务。”</i>
</p>
<p>
    该定义包含以下概念：用于组成系统的事物就其本身而言可以属于一个值得研究的领域中。下图从 [<a href="#LMFS96">LMFS96</a>] 获取，说明了该原理。
</p>
<p align="center">
    <img height="191" alt="美国陆军的水平和垂直领域" src="./../../core.base_rup/workproducts/resources/domains.gif" width="381" border="0" />
</p>
<p align="center">
    <b>美国陆军的水平和垂直领域</b>
</p>
<p align="left">
    该图显示主系统系列、信息系统、命令和控制以及武器系统，每个都有一些完全包含的垂直领域以及水平领域，这些领域跨越这些系统并且跨越系统系列。
    因此，实时调度概念适用于命令和控制的战术领域以及武器系统的所有垂直领域。因此以下做法可能是有意义的：一次解决所有这些领域的实时调度问题，并将以此方式开发的知识和资产视作独立的领域，该独立领域与“电子武器”而非“人事信息系统”关联。
</p>
<h4 align="left">
    内容
</h4>
<p align="left">
    引用体系结构与<a class="elementLinkWithUserText" href="./../../core.base_rup/workproducts/rup_software_architecture_document_C367485C.html" guid="{6F49641A-ED10-47B5-9E5D-3F90A6BF3006}">工作产品：软件体系结构文档</a>及关联模型具有相同的形式，<i>但没有特定于项目的引用，项目引用和特征更具一般性，</i>因而可以在资产库中适当地将引用体系结构分类。与软件体系结构文档（SAD）相关联的典型模型有用例模型、设计模型、实施模型和部署模型。
</p>
<p align="left">
    对 SAD
    及其关联模型的访问向软件设计人员提供了几个入口，他可以选择只使用体系结构的概念或逻辑部件（如果组织的重用策略允许此操作）。在另一个极端，软件设计人员可以从资产库中选择完整的工作子系统和物理级别的部署模型（即完整的硬件和网络蓝图）。
</p>
<p align="left">
    需要其他支持工件以使体系结构资产可用。&nbsp;
</p>
<ol>
    <li>
        <p align="left">
            用例模型描述了体系结构的行为，但软件设计人员还需要知道其非功能的性质。先前在软件需求规范中可能已同时捕获了用例模型和非功能需求。软件设计人员可以从中确定引用体系结构满足当前需求的程度。
        </p>
    </li>
    <li>
        <p align="left">
            使用（尤其是修改）体系结构需要与原开发相同的指南。例如，软件设计人员将需要知道在引用体系结构的形成中应用了哪些规则，以及修改接口的难度。访问与引用体系结构相关联的设计指南可以帮助回答这些问题。
        </p>
    </li>
    <li>
        <p align="left">
            （可选）复查任何现有的相关测试计划也可能证明是有用的。这些测试计划告知设计人员先前用于测试类似体系结构的测试和评估策略，这些信息可使人对体系结构中的潜在缺点有所认识。
        </p>
    </li>
    <li>
        <p align="left">
            （可选）复查任何现有的相关测试自动化体系结构和测试接口规范可能证明是有用的。这些工件告知设计人员可使体系结构有助于测试的可能请求。
        </p>
    </li>
</ol></td>
</tr>
<tr valign="top">
<th scope="row" class="sectionTableHeading">简述</th><td class="sectionTableCell"><a id="BriefOutline" name="BriefOutline"></a> 
<h4>
    资产组织
</h4>
<p>
    拥有引用体系结构资产的组织需要决定如何分类和组织各资产以使软件设计人员容易进行检索（通过匹配新系统的选择条件来完成）。 虽然创建和存储引用体系结构当前不属于 RUP 的范围，建议围绕<a class="elementLinkWithUserText" href="./../../core.base_concepts/guidances/termdefinitions/domain_D8238B93.html" guid="_yHEVYdnmEdmO6L4XMImrsA">领域</a>的概念组织体系结构，领域是一个主题区域，定义了系统或系统系列某方面的知识和概念。这里允许在应用程序以下的级别使用术语“领域”。此用法与某些定义稍有不同，例如 [<a class="elementLinkWithUserText" href="./../../core.base_rup/customcategories/references_56F06DFD.html#HOF99" guid="7.755968586980351E-308">HOF99</a>] 中的定义，但非常符合 [<a class="elementLinkWithUserText" href="./../../core.base_rup/customcategories/references_56F06DFD.html#LMFS96" guid="7.755968586980351E-308">LMFS96</a>] 中的定义：
</p>
<p>
    <i>“<b>产品线领域</b>：一组能力（现在的和／或将来的）－ 定义用于促进沟通、分析和设计，以确定、设计和管理产品线的共性。这样的领域可能包含关系紧密的各组最终用户系统、跨多个系统公用的功能或广泛适用的各组底层服务。”</i>
</p>
<p>
    该定义包含以下概念：用于组成系统的事物就其本身而言可以属于一个值得研究的领域中。下图从 [<a class="elementLinkWithUserText" href="./../../core.base_rup/customcategories/references_56F06DFD.html#LMFS96" guid="7.755968586980351E-308">LMFS96</a>]
    获取，说明了该原理。
</p>
<p align="center">
    <img src="./../../core.base_rup/workproducts/resources/domains.gif" alt="美国陆军的水平和垂直领域" width="381" height="191" border="0" />
</p>
<p align="center">
    <b>美国陆军的水平和垂直领域</b>
</p>
<p align="left">
    该图显示主系统系列、信息系统、命令和控制以及武器系统，每个都有一些完全包含的垂直领域以及水平领域，这些领域跨越这些系统并且跨越系统系列。因此，实时调度概念适用于命令和控制的战术领域以及武器系统的所有垂直领域。因此以下做法可能是有意义的：一次解决所有这些领域的实时调度问题，并将以此方式开发的知识和资产视作独立的领域，该独立领域与“电子武器”而非“人事信息系统”关联。
</p>
<h4 align="left">
    内容
</h4>
<p align="left">
    引用体系结构与<a class="elementLinkWithUserText" href="./../../core.base_rup/workproducts/rup_software_architecture_document_C367485C.html" guid="{6F49641A-ED10-47B5-9E5D-3F90A6BF3006}">工作产品：软件体系结构文档</a>及关联模型具有相同的形式，<i>但没有特定于项目的引用，项目引用和特征更具一般性，</i>因而可以在资产库中适当地将引用体系结构分类。与软件体系结构文档（SAD）相关联的典型模型有用例模型、设计模型、实施模型和部署模型。
</p>
<p align="left">
    对 SAD
    及其关联模型的访问向软件设计人员提供了几个入口，他可以选择只使用体系结构的概念或逻辑部件（如果组织的重用策略允许此操作）。在另一个极端，软件设计人员可以从资产库中选择完整的工作子系统和物理级别的部署模型（即完整的硬件和网络蓝图）。
</p>
<p align="left">
    需要其他支持工作产品以使体系结构资产可用。&nbsp;
</p>
<ol>
    <li>
        <p align="left">
            用例模型描述了体系结构的行为，但软件设计人员还需要知道其非功能的性质。先前在软件需求规范中可能已捕获了用例模型和非功能需求这两者。软件设计人员可以从中确定引用体系结构满足当前需求的程度。
        </p>
    </li>
    <li>
        <p align="left">
            使用（尤其是修改）体系结构需要与原开发相同的指南。例如，软件设计人员将需要知道在引用体系结构的形成中应用了哪些规则，以及修改接口的难度。访问与引用体系结构相关联的设计指南可以帮助回答这些问题。
        </p>
    </li>
    <li>
        <p align="left">
            （可选）复查任何现有的相关测试计划也可能证明是有用的。这些测试计划告知设计人员先前用于测试类似体系结构的测试和评估策略，这些信息可使人对体系结构中的潜在缺点有所认识。
        </p>
    </li>
    <li>
        <p align="left">
            （可选）复查任何现有的相关测试自动化体系结构和测试接口规范可能证明是有用的。这些工作产品告知架构设计师可使体系结构简化测试的可能请求。
        </p>
    </li>
</ol></td>
</tr>
</table>
</div>
<div class="sectionHeading">定制</div>
<div class="sectionContent">
<table cellpadding="0" cellspacing="0" border="0" class="sectionTable">
<tr valign="top">
<th scope="row" class="sectionTableHeading">说明选项</th><td class="sectionTableCell">UML 表示方法：大量相关的体系结构视图：用例、逻辑、进程、部署、实施、数据。
<p>
    <a id="Tailoring" name="Tailoring"></a>
</p>
<p>
    除非系统完全没有先例，如果引用体系结构存在且开发组织可以访问它，则应检查引用体系结构的适用性（针对领域和开发类型）。 引用体系结构的<i>创建</i>是要在组织级别处理的问题。
    当然能够省略上面列出的一些内容，并且仍可以从体系结构重用中得到好处。例如，可以省略测试模型（虽然如果修改体系结构的话，必须重写测试）。至少可以期望得到设计模型和一些相关联的行为描述（可能是用例模型）。如果不符合以上条件，则很难将资产称为引用体系结构。
    它可能仍是某种有效模式。
</p><br />
<br /></td>
</tr>
</table>
</div>
<table cellpadding="0" cellspacing="0" border="0" class="copyright">
<tr>
<td class="copyright"><p>
    &copy; &nbsp;Copyright IBM Corp.&nbsp;1987, 2006. &nbsp;All Rights Reserved.
</p></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<script language="JavaScript" type="text/javascript">
				contentPage.onload();
			</script>
</html>
